package com.emm.yixun.common.exception;

/**
 * <p>
 * 响应码
 * </p>
 */
public enum ResponseCode {
	/**
	 * 系统异常
	 */
	SYSTEM_EXCEPTION("99999", "系统异常"),
	/**
	 * 参数不合法
	 */
	PARAM_INVALID("99998", "%s参数不合法"),
	/**
	 * 数据不存在
	 */
	NO_DATA_FOUND("99997", "%s数据不存在");

	private String code;

	private String messageTemplate;

	ResponseCode(String code, String messageTemplate) {
		this.code = code;
		this.messageTemplate = messageTemplate;
	}

	public String getCode() {
		return code;
	}

	public String getMessageTemplate() {
		return messageTemplate;
	}

	/**
	 * 格式化消息模板
	 * 
	 * @param args
	 *            格式化参数
	 * @return 被格式化后的消息
	 */
	public String formatMessage(Object... args) {
		return String.format(this.messageTemplate, args);
	}
}
